package com.emm.yixun.customer.service;

import javax.jws.WebService;

import com.emm.yixun.common.page.Page;
import com.emm.yixun.common.response.Response;
import com.emm.yixun.common.response.ResponseList;
import com.emm.yixun.common.model.SubscribeTrans;
import com.emm.yixun.common.model.dto.SubscribeTransDto;
import com.emm.yixun.common.model.dto.SubscribeTransRequestDto;

@WebService
public interface SubscribeTransServiceFacade {
    /**
     * 新增
     */
    Response<SubscribeTransDto> save(SubscribeTransDto dto);

    /**
     * 修改,当selective=true时修改非空列,当selective=false修改所有列
     */
    Response<Integer> updateByPrimaryKey(SubscribeTransDto dto,
	    Boolean selective);

    /**
     * 逻辑删除
     */
    Response<Integer> deleteByPrimaryKey(Long id);

    /**
     * 主键查询
     */
    Response<SubscribeTrans> findById(Long id);

    /**
     * 根据dto查询记录
     */
    ResponseList<SubscribeTrans> findByDto(SubscribeTransDto dto);

    /**
     * 根据dto以及分页参数查询记录
     */
    Page<SubscribeTrans> findPageByDto(SubscribeTransDto dto, Integer begin,Integer row);
    
    /**
     * 
     * subcribeTrans:(这里用一句话描述这个方法的作用). <br/>
     * 认购合同收款
     * @author Administrator
     * @param requestDto
     * @return
     * @since JDK 1.6
     */
    Response<String> subcribeTrans(SubscribeTransRequestDto requestDto);
    /**
     * 
     * signedTransfer:(这里用一句话描述这个方法的作用). <br/>
     * 业务删除
     * @author Administrator
     * @param signed
     * @since JDK 1.6
     */
    void signedTransfer(Long signed); 

}
